package com.jtny.nytb.equipment.vo.dataparam;

import cn.hutool.core.util.ObjectUtil;
import com.jtny.component.entity.BaseDTO;
import com.jtny.component.util.BeanUtils;
import com.jtny.nytb.config.datafactor.dto.ConfigLabelDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * 参量标签数据
 *
 * @author 智慧能源中心 - 伍天宇
 * @package com.jtny.nytb.equipment.vo.dataparam
 * @fileName ConfigLabelVO.java
 * @createTime 2023年09月20日 09:35
 * @Copyright© 2023 jtny
 * 江投能源技术研究院 版权所有
 */
@Data
@ApiModel("参量标签数据")
@AllArgsConstructor
@NoArgsConstructor
public class LabelVO extends BaseDTO implements Serializable {

    @ApiModelProperty("参量项id")
    private Long labelItemId;

    @ApiModelProperty("标签类型名称")
    private String labelName;

    @ApiModelProperty("标签项名称")
    private String labelItemName;

    @ApiModelProperty("标签项全路径")
    private String labelItemPath;



    public ConfigLabelDTO buildDTO() {
        return BeanUtils.copyToObject(this, ConfigLabelDTO.class);
    }

    public LabelVO(ConfigLabelDTO dto) {
        if (ObjectUtil.isNull(dto)) {
            return;
        }
        this.labelItemId = dto.getLabelItemId();
        this.labelItemName = dto.getLabelItemName();
        this.labelItemPath = dto.getLabelItemPath();
        this.labelName = dto.getLabelName();
    }

}
